Telegram Group & Telegram Channel
🪅 Команда дня: разбираемся с функциями высшего порядка

Хотите писать чистый, читаемый и лаконичный код без явных циклов? Тогда самое время освоить функции высшего порядка — map(), filter() и reduce().

Эти инструменты из арсенала функционального программирования помогают эффективно обрабатывать и трансформировать данные. А главное — они уже встроены в Python и легко применимы на практике.

💡 Что такое функции высшего порядка

Функции высшего порядка — это функции, которые:
— принимают другие функции как аргументы,
— или возвращают функции в качестве результата.

В Python это не только map(), filter() и reduce(), но и любые функции, работающие с другими функциями.

map(): применяем функцию ко всем элементам

Используется для трансформации каждого элемента в итерируемом объекте:
string_numbers = ["1", "2", "3", "4"]
int_numbers = map(int, string_numbers)
print(list(int_numbers)) # [1, 2, 3, 4]


Или, например:
def add_five(x): return x + 5
numbers = [1, 2, 3]
result = map(add_five, numbers)
print(list(result)) # [6, 7, 8]


filter(): фильтруем по условию

Отбирает элементы, удовлетворяющие определённому условию:
data = [0, None, 1, 2, None, 3]
filtered_data = filter(None, data)
print(list(filtered_data)) # [1, 2, 3]


Пример с четными числами:
def is_even(x): return x % 2 == 0
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # [2, 4, 6]


reduce(): аккумулируем значения

Функция из модуля functools, применяется для накопления результата по итерации:
from functools import reduce

def add(x, y): return x + y
numbers = [1, 2, 3, 4, 5]
result = reduce(add, numbers)
print(result) # 15


Пример нахождения максимума:
def max_value(x, y): return x if x > y else y
numbers = [10, 2, 33, 4, 7]
result = reduce(max_value, numbers)
print(result) # 33


Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/pyproglib/6745
Create:
Last Update:

🪅 Команда дня: разбираемся с функциями высшего порядка

Хотите писать чистый, читаемый и лаконичный код без явных циклов? Тогда самое время освоить функции высшего порядка — map(), filter() и reduce().

Эти инструменты из арсенала функционального программирования помогают эффективно обрабатывать и трансформировать данные. А главное — они уже встроены в Python и легко применимы на практике.

💡 Что такое функции высшего порядка

Функции высшего порядка — это функции, которые:
— принимают другие функции как аргументы,
— или возвращают функции в качестве результата.

В Python это не только map(), filter() и reduce(), но и любые функции, работающие с другими функциями.

map(): применяем функцию ко всем элементам

Используется для трансформации каждого элемента в итерируемом объекте:

string_numbers = ["1", "2", "3", "4"]
int_numbers = map(int, string_numbers)
print(list(int_numbers)) # [1, 2, 3, 4]


Или, например:
def add_five(x): return x + 5
numbers = [1, 2, 3]
result = map(add_five, numbers)
print(list(result)) # [6, 7, 8]


filter(): фильтруем по условию

Отбирает элементы, удовлетворяющие определённому условию:
data = [0, None, 1, 2, None, 3]
filtered_data = filter(None, data)
print(list(filtered_data)) # [1, 2, 3]


Пример с четными числами:
def is_even(x): return x % 2 == 0
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # [2, 4, 6]


reduce(): аккумулируем значения

Функция из модуля functools, применяется для накопления результата по итерации:
from functools import reduce

def add(x, y): return x + y
numbers = [1, 2, 3, 4, 5]
result = reduce(add, numbers)
print(result) # 15


Пример нахождения максимума:
def max_value(x, y): return x if x > y else y
numbers = [10, 2, 33, 4, 7]
result = reduce(max_value, numbers)
print(result) # 33


Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/pyproglib/6745

View MORE
Open in Telegram


Библиотека питониста | Python Django Flask Telegram | DID YOU KNOW?

Date: |

To pay the bills, Mr. Durov is issuing investors $1 billion to $1.5 billion of company debt, with the promise of discounted equity if the company eventually goes public, the people briefed on the plans said. He has also announced plans to start selling ads in public Telegram channels as soon as later this year, as well as offering other premium services for businesses and users.

The S&P 500 slumped 1.8% on Monday and Tuesday, thanks to China Evergrande, the Chinese property company that looks like it is ready to default on its more-than $300 billion in debt. Cries of the next Lehman Brothers—or maybe the next Silverado?—echoed through the canyons of Wall Street as investors prepared for the worst.

Библиотека питониста | Python Django Flask from ye


Telegram Библиотека питониста | Python, Django, Flask
FROM USA